package BakaNoPackage;

import BakaNoPackage.Donnees.*;
import BakaNoPackage.Exception.*;

/**
 * 
 * @author Jonas Renaudot
 *
 * Sert d'interface entre les données et l'interface utilisateur. Représente
 * la bibliothèque de manga en tant que tel
 */
public class AnimeNoBaka {
	
	public Donnees donnees;
	
	public AnimeNoBaka(Donnees donnees){
		this.donnees = donnees;
	}
	
	/**
	 * Permet de récupérer un manga sur lequel on pourra travailler
	 * @param nom
	 * @return
	 * @throws MangaIntrouvableException
	 */
	public Manga getManga(String nom) throws MangaIntrouvableException{
		return donnees.getManga(nom);
	}
	
	/**
	 * Retourne tous les mangas présents dans la base
	 * @return
	 */
	public Manga[] getMangas(){
		
		return donnees.getMangas();
	}
	
	/**
	 * Créé un manga selon le nom
	 * @param nom
	 * @return
	 * @throws MangaExistantException
	 */
	public Manga creerManga(String nom) throws MangaExistantException{
		return donnees.createManga(nom);
	}
	
	/**
	 * Gère la suppression de manga de la base de donnéees
	 * @param manga
	 * @throws MangaIntrouvableException
	 */
	public void delManga(Manga manga) throws MangaIntrouvableException{
		//Supprime le manga de la base de données
		donnees.deleteManga(manga);
	}
	
	/**
	 * 
	 */
	public void delete(){
		//Supprime toute la base de données
		//TODO: compléter
	}
}
